Client Source C++17 Yapmak

  • Konuyu açan Konuyu açan nsosder1998
  • Açılış Tarihi Açılış Tarihi
  • Yanıt Yanıt 2
  • Gösterim Gösterim 271

nsosder1998

Üye
Üye
Mesaj
9
Beğeni
4
Puan
440
Ticaret Puanı
0
Client Sourceyi c++17 ye yükseltmek. videoyu 4k yükledim işlenmesi biraz uzun sürebilir.

bu işlem vs2019 yada vs2022 kullanıp c++14 kullananlarda sorunsuz çalişir vs2013 kullananlar önce vs2022 yada vs2019 a yükseltmesi gerekmektedir @Whistle adminimizin altyapı hazırlama rehberinde mevcuttur.




 

Dosya Eklentileri

Son düzenleme:
Üyelerimizin ve ziyaretçilerimizin güvenliğini sağlamak için site içerisinde paylaştığınız dosyaların virüs tarama sonuçlarını 24 saat içerisinde eklemeniz gerekmektedir. Virüstotal kullanarak tarama sonuçlarını konuya ekleyebilirsiniz.
 
Python2.7 Kullananlar için
2:
Genişlet Daralt Kopyala
# -*- coding: utf-8 -*-


import os
import re
import codecs

def read_file_with_fallback(file_path):
    encodings = ['utf-8', 'latin-1', 'cp1252']
    for enc in encodings:
        try:
            with codecs.open(file_path, 'r', encoding=enc) as file:
                return file.readlines(), enc
        except UnicodeDecodeError:
            continue
    raise UnicodeDecodeError("Dosya {} uygun bir şekilde okunamadı.".format(file_path))

def convert_to_std_syntax(file_path):
    lines, encoding_used = read_file_with_fallback(file_path)
    
    replacements = [
        (r'(?<!std::)(?<!\w)(string)(?!\w)', r'std::string'),
        (r'(?<!std::)(?<!\w)(pair)(?!\w)', r'std::pair'),
        (r'(?<!std::)(?<!\w)(make_pair)(?!\w)', r'std::make_pair'),
        (r'(?<!std::)(?<!\w)(vector)(?!\w)', r'std::vector'),
    ]
    
    updated_lines = []
    for line in lines:
        if line.strip().startswith("#include"):
            updated_lines.append(line)
            continue
        for pattern, replacement in replacements:
            line = re.sub(pattern, replacement, line)
        updated_lines.append(line)
    
    with codecs.open(file_path, 'w', encoding=encoding_used) as file:
        file.writelines(updated_lines)

def process_directory(directory):
    for root, _, files in os.walk(directory):
        for file in files:
            if file.endswith(('.cpp', '.h')):
                file_path = os.path.join(root, file)
                print("Processing: {}".format(file_path))
                try:
                    convert_to_std_syntax(file_path)
                except Exception as e:
                    print("Hata oluştu: {} (Dosya: {})".format(e, file_path))

project_directory = "."
process_directory(project_directory)
 
Uyarı: Bu konu açıldığından bu yana baya zaman geçmiş.
Muhtemelen daha fazla tartışma gerekli değildir ki bu durumda yeni bir konu başlatmayı öneririz. Eğer yine de cevabınızın gerekli olduğunu düşünüyorsanız buna rağmen cevap verebilirsiniz.
Geri
Üst