Für Johannesburg kann ich das Ten Bompas sehr empfehlen - das ist ein Suite-Only-Hotel mit 10 Suites an der Bompas Road (daher auch Ten Bompas). Gehört auch zu Marriott aber hat den Vibe eines eigenständigen Hotels und nicht einer großen Kette.
Melrose Arch und darüber hinaus noch Marriott wäre mir persönlich ehrlich gesagt zu steril auch wenn man das einer der wenigen Orte in Johannesburg ist an denen man zu Fuß rumlaufen kann - da fand ich das Ten Bompas besser, auch wenn man von dort mit dem Auto / Uber fahren muss. Wir waren beruflich noch im Hyatt Regency in Rosebank, da kann man auch zu Fuß etwas rumlaufen, Lounge und Frühstück sind gut und Rosebank ganz nett (zudem an Gautrain angebunden).
In Kapstadt war ich auch im Westin - das war gut, halt so ähnlich wie das Westin in Frankfurt nur eben mit einem schönen Ausblick und in einer unbelebten Messegegend, d.h. wir sind immer mit dem Auto / Uber woanders in Kapstadt hingefahren. Ich war sonst noch im Glen's Boutique Hotel, das hatte Postkartenatmosphäre (einfach die Fotos online schauen). Wie die anderen schon meinten, ich würde mir da schon überlegen ob es nicht eine individuelle Lösung sein kann - das macht sehr, sehr viel Charme nochmal zusätzlich aus. Wenn Du einfach nur erwartbaren Komfort suchst, ist das Westin nicht verkehrt (nur halt global austauschbar).
Ich muss für Johannesburg auch noch eine Lanze brechen auch wenn es mit der Frage hier jetzt nichts zu tun hat:
Wenn man das alles kategorisch ausschließt verpasst man m.E. sehr viel vom echten Charme von Johannesburg - das ist alles etwas versteckter und nicht so auf dem Präsentierteller wie in Kapstadt. Ich war für die Arbeit jeden Tag in CBD und es ist uns nie etwas passiert und ich habe auch nichts mitbekommen. Abends ist da natürlich nicht viel los, das würde ich bei Dunkelheit komplett meiden. Ich war auch bei Restaurants in Fordsburg, mit dem Uber zielgerichtet hin - das haben die (reichen) Einheimischen schon als gefährlich empfunden und wollten da nicht hin aber passiert ist uns da nie etwas. Ich war (mit einer Guided Tour) in Hillbrow und in Ponte City (im Vodacom Turm) was von Einheimischen als sehr, sehr gefährlich wahrgenommen wird. Meine Erfahrung mit diesen "gefährlicheren Orten" ist auch hier, dass es auch da nochmal Ecken gibt die besser sind und die, die wirklich gefährlich sind (z.B. alles rund um den Hauptbahnhof ist laut meinem Fahrer "bad for you" und auch in Hillbrow gibt es Straßen die sehr belebt sind und Seitengassen wo sich die bewaffneten Banden und Drogendealer treffen). Das kann sich nach einer Straßenüberquerung schlagartig ändern. Das können die Einheimischen am besten sagen und empfehlen aber auch hier kommt es darauf an wen man fragt: Ein reicher 70-jähriger Weißer aus einem Vorort im Norden wird alles als gefährlich empfinden und noch vorsichtiger sein als wir. Ein lokaler Taxifahrer kann das aktueller und präziser einschätzen. Aber: Es gibt auch in den als gefährlich geltenden Gegenden schöne Ecken, z.B. Maboneng Arts on Main (hier auch gut die Bar "Living Room"). Eine guided Tour durch die gefährlichen Gegenden (ich hab das mit Dlala Nje gemacht, sehr empfehlenswert) würde ich auch nochmal machen - Hillbrow war zu Apartheit-Zeiten noch eine der begehrtesten Viertel von Johannesburg, 30 Jahre später ist es komplett verfallen, so einen schnellen Wandel sieht man nicht oft auf der Welt.
Ansonsten: In Johannesburg habe ich eigentlich alles zwischen Westcliff und Sandton als sicher empfunden (Saxonworld, Rosebank, Dunkeld, Illovo, da zählt auch Melrose Arch zu). Midrand, Fourways, Bryanston waren die reichen weiß geprägten Vororte und würde ich auch als sicher empfinden.
Und: Ich habe mich natürlich an die Regeln gehalten. Nachts nirgendwo zu Fuß rumlaufen, nicht mal 10 Meter vom Restaurant / Hotel wegbewegen, sondern konsequent nur mit Auto / Uber fahren. Auch tagsüber nur in wenigen "sicheren" Gebieten zu Fuß rumlaufen. Kein Geld am Flughafen wechseln. Nicht in der Nähe von Geldtransportern aufhalten (die werden oft überfallen). Keine Wertsachen offen zeigen und auch nicht das Handy auf den Tisch legen. Geld abheben nur tagsüber in sehr belebten Malls. Wo es geht mit einem lokalen (Taxi-)Fahrer fahren (bei der Gautrain-Station in Rosebank warten z.B. welche), der einem sehr gezielt sagen kann wo es gefährlich werden kann. Wenn man merkt, dass die Stimmung kippt, dann schnell weg (wir waren z.B. bei einem Rugby-Länderspiel in Johannesburg und das Stadion ist in keiner guten Gegend - das ist während dem Spiel gar kein Problem aber eine Stunde nach Spielabpfiff waren nicht mehr viele Leute da). Keine lokalen Nahverkehrszüge nutzen (außer dem Gautrain) und auch keine Minibusses nutzen, es sei denn man ist mit Einheimischen unterwegs die besser einschätzen können was ok ist und was nicht.