Измените
Circle::Circle(const Point& center, double radius)
{
center_pt = center;
radius_size = radius;
}
на
Circle::Circle(const Point& center, double radius) : center_pt(center), radius_size(radius)
{
}
Так, чтобы он использовал конструктор, который вы определили для точки. Также лучше для радиуса
1) Да, это разрешено, но очень, очень обескуражен. Наличие этой информации в вашей базе данных делает вас чрезвычайно привлекательной целью для хакеров. И если вы думаете, что можете защитить это, подумайте еще раз. Хакеры победили безопасность компаний с превосходной безопасностью. Ваша безопасность не будет лучше.
2) Вы должны следовать правилам PCI, изложенным в этом руководстве . Но вы можете найти это руководство проще для понимания. Перейдите на страницу 14, чтобы узнать, что вам нужно. Вы можете хранить его, но он должен быть зашифрован в соответствии со стандартами PCI. Ваш сервер и сеть также должны быть в безопасности. Если какая-либо часть головоломки не соответствует PCI, вы не можете хранить номера кредитных карт. Это исключает большинство хостинговых компаний в качестве решения.
Это не прямой ответ, а предложение. Пожалуйста, не отрицайте; Я просто пытаюсь быть полезным. После большого опыта работы с PCI, я настоятельно рекомендую вам избегать использования информации о кредитных картах в ваших системах, если это вообще возможно.
Подход, который мы использовали (с большим успехом) - это токенизация. Существуют службы, которые будут собирать и хранить информацию о вашей кредитной карте для вас. Вы делаете вызов API, чтобы получить токен, обычно какой-то хеш, который представляет основной номер счета кредитной карты. Когда вы хотите выставить счет карте, вы передаете токен и другие детали транзакции, и они обрабатывают их платеж.
Вот простая статья о процессе: http://www.creditcards.com/credit-card-news/tokenization-to-fight-credit-card-id-theft-1282.php
Есть много вариантов для этого в эти дни:
Для получения дополнительной информации об этом подходе можно использовать Поиск Google: токенизация кредитных карт .
Можно, но это дорого.
Вам нужно, чтобы DNS был предоставлен другой службой или выделенным DNS-сервером.
У вас должен быть выделенный сервер, на котором работает база данных SQL Server, и ничего больше.
Вам необходимо использовать одобренное PCI программное обеспечение.
Ваш сервер базы данных должен находиться в том же центре обработки данных, что и ваш веб-сервер, иначе у вас будет низкая производительность.
Поэтому лучше либо разместить свой сайт на безопасном хосте PCI, либо настроить свои серверы, как я описал.