Well I know that in theory the obvious answer is yes, as the constructor is a function like the others, but have its own characteristics. But, I want to be sure, because let's suppose that I pass an address that was already assigned to another contract in the blockchain, what happen in that situation? There is an option (a kind of alert) to avoid this situation? or just this didn't and will not happen never?
Maybe is 99.9% impossible, but I want to be sure. Is not better that this kind of addresses are generated by the network? I so, how can I do this in the deployment process?
Here a code, to be clear:
contract SimpleContract {
address public personalAddress;
function SimpleContract(address givenAddress) {
personalAddress = givenAddress;
}
}