Ho un *.cppfile che compilo con C ++ (non un compilatore C). La funzione contenitiva si basa su un cast (vedi l'ultima riga) che sembra essere definito in C (per favore correggi se sbaglio!), Ma non in C ++ per questo tipo speciale.
[...] C++ code [...]
struct sockaddr_in sa = {0};
int sockfd = ...;
sa.sin_family = AF_INET;
sa.sin_port = htons(port);
bind(sockfd, (struct sockaddr *)&sa, sizeof sa);
[...] C++ code [...]
Dal momento che lo compilo in un file C ++, questo comportamento è ora definito o indefinito? O avrei bisogno di spostarlo in un *.cfile, per renderlo un comportamento definito?
.cestensione, il compilatore C viene richiamato automaticamente.